Skip to main content

Esempio CNC 07: Uso di espressioni e sottoprogrammi

Vedi il CNC07_Subprogram.project progetto di esempio nella directory di installazione di CODESYS sotto ..\CODESYS SoftMotion\Examples.

Questo esempio mostra come chiamare a sottoprogramma da un file CNC così come l'uso espressioni nelle istruzioni di movimento CNC.

Nel CNC programma, gli azionamenti vengono prima accesi, come negli altri esempi. Il CNC_PreparePath il programma usa il SMC_ReadNCFile2 blocco funzione per la lettura del file CNC. SMC_ReadNCFile2 crea il SMC_ReadNCFile POU e lo estende con il supporto per sottoprogrammi ed espressioni.

Il programma CNC CNC2Main.cnc viene convertito mediante il SMC_NCInterpreter blocco funzionale. SMC_NCInterpreter crea il SMC_NCDecoder POU e lo estende con il supporto per subroutine ed espressioni.

Il progetto contiene due programmi CNC: il programma principale CNC2Main.cnc e il sottoprogramma CNC2.cnc. Il programma principale passa il valore 25 nel #RADIUS parametro al sottoprogramma. Nel sottoprogramma, l'espressione X#RADIUS*2 viene utilizzato per calcolare il percorso circolare.

Programma principale

N0 G01 X$g_x$ Y0 F50 E30 E-30
N10 G01 X0 Y$g_y$
N20 CNC2{25}
N30 G01 X0 Y-200

sottoprogramma

SUBPROGRAM CNC2{#RADIUS : LREAL}
N010 G91
N020 G02 X#RADIUS*2 Y0 R#RADIUS Z2.5 F100 E-100 E100
N030 G02 X-#RADIUS*2 Y0 R#RADIUS Z7.5
END_SUBPROGRAM